Congestion can occur on any equipment situated on the path taken by a packet. More precisely, a piece of equipment can be congested at input or output memories, internal queues, etc.
Congestion notification functions have been defined by standardization organizations for packet communication networks. These functions are based on various mechanisms, among which there may be cited an explicit congestion notification mechanism ECN, a forward explicit congestion notification mechanism FECN, a backward explicit congestion notification mechanism BECN or even combinations of these various mechanisms. The term “forward” corresponds to the direction of transmission of a packet, that is to say toward the recipient of the packet, and the term “backward” corresponds to the opposite direction of transmission of the packet, that is to say toward the transmitter of the packet. These various mechanisms use a header field of the data packets to carry a piece of information relating to the congestion of one of the nodes conveying the packet. Thus, this piece of information relating to the congestion is transmitted in a transfer plane relating to the transport of the data. By way of example, for a packet communication network of IP, for “Internet Protocol”, type, the document RFC 3168 from the IETF, for “Internet Engineering Task Force”, specifies the way in which an IP packet carries an explicit congestion notification ECN forward. Such an IP packet will subsequently be called a marked packet.
These explicit notification mechanisms have certain disadvantages, however. Once marked, a packet needs to arrive at its recipient so that the information relating to the congestion can be returned to the transmitter by means of an acknowledgement, for example, when the notification mechanism is implemented with the TCP, for “Transmission Control Protocol”, protocol as defined in a document RFC 5562 from the IETF. This causes a delay in the signaling of the congestion to the transmitter and thus in the processing thereof. This also results in a delay in the transmitter taking measures to prevent or resolve the congestion. Moreover, marking with the information relating to the congestion is carried out using statistical methods. The packets to be marked are chosen from all of the packets conveyed by the queue encountering the congestion situation. In point of fact, congestion may be linked to multiple streams, to the sum total of the streams conveyed by a node or may even be the circumstance of a single stream. It is furthermore the case that congestion can cause a deterioration in the quality of service. By way of example, this deterioration translates into a loss of data packets, or an increase in the latency relating to the sending of the data packets from a transmitting node to a receiving node. By way of example, congestion is detected by virtue of a threshold being reached in a queue that stores packets at the input or output of a node in the network. Depending on the value of this threshold, precongestion or congestion will be referred to. Subsequently, the terms “congestion” and “precongestion” will be used indiscriminately. The expression “congestion information” that is also subsequently used refers to a piece of information indicating the existence of congestion.